The present inventive concepts relate to systems having memory arrays, and more particularly, to methods and systems for dynamically allocating thermal budgets for systems containing multiple memory groups.
Memory is a fundamental component of computers and computing. For example, a computer server can have multiple memory modules, memory arrays, memory groups, external memory units such as memory array boxes, or the like. By way of another example, mobile devices can have multiple embedded memory chips. In conventional systems that have memory groups, each memory group has its own fixed fraction of a total thermal budget. Each memory group evenly shares the total thermal budget, and each share is permanently fixed. The total thermal budget is based on worst case predictions and evaluations. System designers design for worst case to reserve thermal budget for each memory group. A fixed thermal budget, or thermal design power (TDP), plus a guard band, is used in attempts to ensure sufficient and stable operation.
But for most cases, the load on each memory group is not evenly distributed. In other words, one memory group might have a high load and may reach the thermal budget limit for its fraction of the total thermal budget, while another memory group in the same system with low load might have extra unused thermal budget. As a result, thermal budget is wasted and the dynamic performance of the system is limited because of the unused thermal budget margins.
What is needed is a technique for dynamically redistributing the thermal budget to each memory group from the total memory thermal budget based on the workload of each memory group. Together with related inventive concepts disclosed herein, these and other limitations in the prior art are addressed.